local M = {}

function M.band(x, y)
    return x & y
end

function M.rshift(x, y)
    return x >> y
end

function M.lshift(x, y)
    return x << y
end

function M.bor(x, y)
    return x | y
end

function M.bxor(x, y)
    return x ~ y
end

function M.bnot(x)
    return ~x
end

return M